gen-variants-chordt seed number chord-trim-value transpose-value
symbol-pattern
Use this to generate a sequence of chords from a given symbol-pattern. The number of chords generated is equal to the length of the pattern. The chords are trimmed by random control to a size with a top limit equal to the length of the symbol-pattern. Transpositon is applied with random control to each variant with a top limit value equal to length of the symbol-pattern.
(setq chds (gen-variants-chordt 0.34 nil nil nil '(a b c d)))
--> (fe ee cd g)
The number sets the number of chords generated. The chord-trim-value sets the number of symbols in each chord at random value between 1 and &optional chord-trim-value.
(setq chrds1 (gen-variants-chordt 0.34 12 3 nil '(a b c d)))
--> (fe ee cd g fed ge efd e de fg ce eg)
A transpose value can be set to provide a top limit for random control over the transposition of each chord generated.
(setq chds2 (gen-variants-chordt 0.1515 nil nil 7 '(a b c d)))
--> (if ede ecfe fifi)
The function may be used with quite extensive symbol-patterns (even those containing pause symbols) as long as trim and transpose values are set.